Field
The present disclosure relates to a first in, first out (FIFO) buffer, and, in particular, to a compression FIFO buffer with zero delay.
Related Art
A FIFO buffer (which is henceforth referred to as a ‘FIFO’) organizes and manipulates data so that the oldest (first) entry or ‘head’ of the queue in the FIFO is processed first. Thus, during operation a FIFO exhibits first-come, first-served behavior, so that data leaves the queue in the order in which it arrived.
FIG. 1 presents an existing FIFO, a FIFO may be implemented using a DEPTH×WIDTH hardware FIFO. If the write-enable (wen) is set during operation of FIFO, one width-wide data word (din) is enqueued. Moreover, if the read-enable (ren) is set, a width-wide data word (dout) is dequeued. Furthermore, the signal empty indicates that the FIFO queue is empty, and the signal full indicates that the FIFO queue already holds depth data words and there is no memory space left to store more data.
However, in many applications as little delay as possible is desired for when the data is read from or written to memory. This can make it difficult to compress and decompress the data stored in a FIFO.
Hence, what is needed is a FIFO without the above-described problems.